home *** CD-ROM | disk | FTP | other *** search
/ Wonky Flux Batch 2019 02 / Wonky_Flux_Batch_2019-02.zip / Wonky Flux Batch 2019-02 / 062 - Misc.dsk / HCS.bas < prev    next >
BASIC Source File  |  2019-02-17  |  21KB  |  454 lines

  1. 0  REM <CTRL-H><CTRL-H><CTRL-H><CTRL-H><CTRL-H><CTRL-H><CTRL-H>        <CTRL-M>__________________________<CTRL-M><CTRL-O> HACKING CONSTRUCTION SET <CTRL-N><CTRL-M><CTRL-M><CTRL-M>      BY CYBORG 1986<CTRL-M><CTRL-M><CTRL-M>  (LIST THIS IN 80 COLS!)<CTRL-M><CTRL-M>
  2. 5  PRINT  CHR$(21)
  3. 10 Q$ = "---------------------------------------"
  4. 15  GOSUB 2190
  5. 20  TEXT : HOME 
  6. 25 D$ =  CHR$(4)
  7. 30  PRINT D$"NOMONCIO"
  8. 35  ONERR  GOTO 45
  9. 40  PRINT D$"BLOAD FAKEWP,A$4000"
  10. 45  POKE 216,0
  11. 50 G$ = "HCS.INDEX"
  12. 55  REM  <CTRL-O>SCREEN FORMATTING<CTRL-N>
  13. 60 AZ$ = "!/-\"
  14. 65 X$ = "Hacking Construction Set"
  15. 70  VTAB 2: HTAB 9: PRINT X$: VTAB 3: HTAB 16: PRINT "by Cyborg"
  16. 75  PRINT : INVERSE 
  17. 80  VTAB 5: HTAB 10: PRINT  SPC( 22)
  18. 85  VTAB 6: HTAB 1: PRINT  SPC( 40): VTAB 22: PRINT  SPC( 40)
  19. 90  NORMAL : VTAB 6: HTAB 9: NORMAL : PRINT " ";: HTAB 32: PRINT " ": INVERSE 
  20. 95  VTAB 22: HTAB 3: PRINT "CONNECT  CODE  WAIT 00  DISK  ";: NORMAL : PRINT "HUNGUP": INVERSE 
  21. 100  FOR A = 7 TO 21: VTAB A: PRINT " ";: HTAB 40: PRINT " ": NEXT 
  22. 105  VTAB 6: PRINT "\";: HTAB 40: PRINT "/": VTAB 22: PRINT "/";: HTAB 40: PRINT "\"
  23. 110  NORMAL 
  24. 115  FOR XX = 1 TO 400: NEXT XX
  25. 120  VTAB 2: HTAB 9: FOR D = 1 TO  LEN(X$): INVERSE :X = X +1: IF X > LEN(AZ$)  THEN X = 1
  26. 125  PRINT  MID$ (AZ$,X,1);: FOR XX = 1 TO 8: NEXT XX
  27. 130  NORMAL : PRINT  CHR$(8); MID$ (X$,D,1);
  28. 135  NEXT D
  29. 139  VTAB 1: HTAB 9 +D -1: PRINT "+"
  30. 140 F = 250:G = 35: GOSUB 2195
  31. 141  VTAB 1: HTAB 9 +D -1: PRINT " "
  32. 145  POKE 34,6: POKE 32,2: POKE 33,36: POKE 35,21
  33. 150 M = 0
  34. 155  HOME 
  35. 160  REM  <CTRL-O>CONFIGURE MODEM<CTRL-N>
  36. 165  VTAB 10: HTAB 10: PRINT "Configuring Modem"
  37. 170  VTAB 14: HTAB 13: PRINT "Version 1.0"
  38. 175 Z = 16
  39. 180  POKE 49153,0: POKE 49237,0: POKE 1148,22: POKE 49236,0: POKE 49152,0
  40. 185  PRINT D$"PR#2"
  41. 190  FOR D = 1 TO 500: NEXT D
  42. 195  PRINT "AT M"M" S7="Z" S0=0 X1 Q0 V0 E0"
  43. 200  PRINT D$"IN#2"
  44. 205  FOR D = 1 TO 500: NEXT D
  45. 210  GET X$
  46. 215  PRINT D$"IN#0": PRINT D$"PR#0"
  47. 220  IF QQ = 1  THEN QQ = 0: RETURN 
  48. 225  REM  <CTRL-O>GET THE DATE<CTRL-N>
  49. 230  GOSUB 1980
  50. 235  POKE 34,0: INVERSE : VTAB 6: HTAB 19: PRINT K$: POKE 34,6: NORMAL : HOME 
  51. 240  REM  <CTRL-O>MAIN MENU<CTRL-N>
  52. 245  POKE 49231,0
  53. 250  POKE 34,0: INVERSE : VTAB 6: HTAB 11: PRINT "MAIN  ": POKE 34,6: NORMAL : HOME : PRINT : PRINT 
  54. 255  ONERR  GOTO 1925
  55. 260  PRINT D$"VERIFY"G$
  56. 265  POKE 216,0
  57. 270 X$ = "READ": GOSUB 2225: HOME 
  58. 275  PRINT D$"OPEN "G$",L200"
  59. 280  FOR A = 1 TO 9
  60. 285  PRINT D$"READ "G$",R"A
  61. 290  INPUT B$: INPUT F: INPUT G:C$(A) = B$: VTAB 8 +A: PRINT "  "B$;: HTAB 16: PRINT "D:"F;: HTAB 23: PRINT "F:"G;:T3 = F:T4 = G: GOSUB 2150: HTAB 30: PRINT R$
  62. 295  NEXT A
  63. 300  PRINT D$"CLOSE"
  64. 305  GOSUB 2210
  65. 310  REM  <CTRL-O>MAIN SELECTOR<CTRL-N>
  66. 315  VTAB 19: PRINT "  [RET] [ESC] [SPACE] [D]elete <->"
  67. 320 P = 1
  68. 325  VTAB 8 +P: INVERSE : HTAB 2: PRINT " "C$(P)" ": NORMAL 
  69. 330 K =  PEEK( -16384): IF K <128  THEN 330
  70. 335 K = K -128: POKE 49168,0
  71. 340  IF K = 8  OR K = 21  OR K = 10  OR K = 11  THEN  VTAB 8 +P: HTAB 2: PRINT " "C$(P)" ": GOTO 375
  72. 345  IF K =  ASC("D")  AND C$(P) < >"EMPTY"  THEN 1725
  73. 350  IF K = 32  AND C$(P) < >"EMPTY"  THEN X = P: GOTO 2025
  74. 355  IF K = 27  THEN  POKE  -16298,0: POKE  -16302,0: FOR I = 3 TO 30: POKE  -16304,0: FOR J = 1 TO 1:K =  PEEK( -16336): NEXT : POKE  -16303,0: NEXT : TEXT : HOME : GOTO 2130
  75. 360  IF K = 13  AND C$(P) < >"EMPTY"  THEN  GOTO 395
  76. 365  IF K = 13  THEN X = P: GOTO 1150
  77. 370  GOTO 330
  78. 375  IF K = 8  OR K = 11  THEN P = P -1: IF P <1  THEN P = 9
  79. 380  IF K = 21  OR K = 10  THEN P = P +1: IF P >9  THEN P = 1
  80. 385  GOTO 325
  81. 390  REM  <CTRL-O>LOAD OR CREATE<CTRL-N>
  82. 395 X = P: GOSUB 1775
  83. 400 QQ = 1: GOSUB 180
  84. 405  REM  <CTRL-O>HACKER BEGINS HERE<CTRL-N>
  85. 410  POKE 34,0: INVERSE : VTAB 6: HTAB 11: PRINT "HACKER": POKE 34,6: NORMAL 
  86. 415  HOME 
  87. 420  VTAB 8: PRINT "#"X" ";: INVERSE : PRINT " "J$" ";: NORMAL : PRINT  TAB( 20);"[ESC][SPC][G][S]"
  88. 425  PRINT : PRINT "number- Service (1):"A$(1)
  89. 430  PRINT "        Carrier (1):"B$(1)
  90. 435  PRINT "        Format     :"A$
  91. 440 Q =  LEN(C$)
  92. 445  IF O = 0  THEN 465
  93. 450  FOR D = 2 TO 7: IF B$(D) = ""  THEN 460
  94. 455  NEXT D
  95. 460 CE = D -1
  96. 465  PRINT "codes-    starting :"C$
  97. 470 B$ = "":N$ = "": FOR D = 1 TO Q:B$ = B$ +"0":N$ = N$ +"0": NEXT : IF N = 0  THEN 490
  98. 475  FOR D = 2 TO 7: IF A$(D) = ""  THEN 485
  99. 480  NEXT D
  100. 485 NV = D -1
  101. 490  PRINT "T#/C#/#   ending   :"C$
  102. 495  PRINT "*./**/#   increment:1"
  103. 500  PRINT "     Datafile name :DATA."J$
  104. 505  VTAB 13: HTAB 21: INPUT "";M$
  105. 510  IF M$ = ""  THEN  VTAB 13: HTAB 21: PRINT C$:M$ = C$: GOTO 525
  106. 515  IF  LEN(M$) < > LEN(C$)  THEN 505
  107. 520  IF  VAL(M$) <0  THEN 505
  108. 525  VTAB 14: HTAB 21: INPUT "";I$
  109. 530  IF  LEFT$(I$,1) = "C"  THEN EC =  VAL( MID$ (I$,2, LEN(I$))): GOTO 550
  110. 535  IF  LEFT$(I$,1) = "T"  THEN ET =  VAL( MID$ (I$,2, LEN(I$))): GOTO 550
  111. 540  IF  LEN(I$) < > LEN(C$)  THEN 525
  112. 545  IF  VAL(I$) <0  THEN 525
  113. 550  VTAB 15: HTAB 21: INPUT "";F$
  114. 555  IF F$ = ""  THEN S = 1: VTAB 15: HTAB 21: PRINT "1": GOTO 610
  115. 560  IF F$ = "**"  THEN S = 0: GOTO 600
  116. 565  IF  LEFT$(F$,1) < >"*"  THEN 605
  117. 570  IF  LEFT$(F$,1) = "*"  THEN S$ =  MID$ (F$,2, LEN(F$)):F$ = "*"
  118. 575  IF F$ = "*"  THEN  FOR A = 1 TO  LEN(S$):X$ =  MID$ (S$,A,1): IF X$ = "."  THEN 580
  119. 576  NEXT A
  120. 577  GOTO 550
  121. 580  IF A =  LEN(S$) +1  THEN 605
  122. 585 U$ =  MID$ (S$,1,A -1):Z$ =  MID$ (S$,A +1, LEN(S$))
  123. 590 S =  VAL(U$) +1
  124. 595 SP =  VAL(Z$) - VAL(U$)
  125. 600  GOTO 610
  126. 605 S =  VAL(F$):SP = 1
  127. 606  IF S = 0  THEN 550
  128. 610  VTAB 16: HTAB 21: INPUT "";E$
  129. 615  IF E$ = ""  THEN E$ = "DATA." +J$: VTAB 16: HTAB 21: PRINT E$
  130. 620  VTAB 19: PRINT "   [RETURN] starts [R]edo [ESC]ape ";: GET X$: PRINT X$: VTAB 19: CALL  -868
  131. 625  IF X$ = "R"  THEN 505
  132. 630  IF X$ =  CHR$(27)  THEN 240
  133. 635 T$ = "Increment:": IF F$ = "*"  THEN T$ = T$ +"random " + STR$(S +1) +"/" + STR$(S +SP): GOTO 650
  134. 640  IF F$ = "**"  THEN T$ = T$ +"completely random": GOTO 650
  135. 645 T$ = T$ + STR$(S)
  136. 650  ONERR  GOTO 690
  137. 655  PRINT D$"VERIFY"E$
  138. 660 X$ = "WRIT": GOSUB 2225
  139. 665  PRINT D$"APPEND"E$
  140. 670  PRINT D$"WRITE"E$: PRINT : PRINT "Hacking as of "K$: PRINT : PRINT "Starting code:"M$: PRINT T$
  141. 675  PRINT D$"CLOSE"
  142. 680  GOSUB 2210
  143. 685  GOTO 730
  144. 690 X$ = "OPEN": GOSUB 2225
  145. 695  PRINT D$"OPEN"E$
  146. 700  PRINT D$"WRITE"E$
  147. 705  PRINT : PRINT "       Hacking Construction Set": PRINT Q$: PRINT "Name....."J$" "K$: PRINT "Number..."A$(1): PRINT "Format..."A$: PRINT Q$: PRINT : PRINT "Hacking as of "K$: PRINT : PRINT "Starting code:"M$: PRINT T$
  148. 710  PRINT D$"CLOSE"
  149. 715  GOSUB 2210
  150. 720  REM   <CTRL-O>MAIN HACK LOOP<CTRL-N>
  151. 725  POKE 216,0
  152. 730 A =  VAL(M$):B =  VAL(I$)
  153. 735 Y = 0:V = 0
  154. 740 C = A:FL = 1
  155. 745  REM  <CTRL-O>HACKER LOOPS HERE<CTRL-N>
  156. 750 Y$ = B$
  157. 755  IF FL = 1  THEN FL = 0: GOTO 765
  158. 760  IF U < >1  THEN C = C +S
  159. 765  IF U < >1  AND EC < >0  AND EC = V  THEN 1025
  160. 770  IF U < >1  AND ET = V  AND ET < >0  THEN 1025
  161. 775  IF F$ = "**"  THEN B$ = "": FOR D = 1 TO Q:B$ = B$ + STR$( INT(( RND(1) *10))): NEXT D:C =  VAL(B$): GOTO 810
  162. 780 B$ =  STR$(C): IF C = (A)  THEN 790
  163. 785  IF F$ = "*"  THEN C = C + INT( RND(1) *SP) +S:B$ =  STR$(C)
  164. 790  IF Q =  LEN(B$)  THEN 810
  165. 795  FOR D = Q TO  LEN(B$) +1  STEP  -1
  166. 800 B$ = "0" +B$
  167. 805  NEXT D
  168. 810 YY =  INT( RND(1) *CE) +1:ZZ =  INT( RND(1) *NV) +1: VTAB 10: PRINT "Number- Service ("ZZ"):"A$(ZZ): PRINT "        Carrier ("YY"):"B$(YY)
  169. 815  VTAB 18: PRINT "|"Y$"|"
  170. 820  VTAB 19: PRINT "|"B$"|  D:"Y" F:";: INVERSE : PRINT V;: NORMAL :T3 = Y:T4 = V: GOSUB 2150: PRINT " "R$
  171. 825  IF S < >0  AND F$ < >"*"  THEN N$ =  STR$(C +S)
  172. 830  IF  LEN(N$) < >Q  THEN  FOR I = 1 TO Q -1:N$ = "0" +N$: NEXT 
  173. 835  VTAB 20: PRINT "|"N$"|"
  174. 840  IF L = 1  THEN DL =  INT( RND(1) *9) +1: GOSUB 2080
  175. 845  IF U < >1  THEN Y = Y +1
  176. 850 T$ = "": IF CX = 1  THEN CX = 0:T$ = " M" + STR$(M) +" "
  177. 855  PRINT D$"PR#2"
  178. 860 H$ = "": FOR I = 1 TO  LEN(A$):X$ =  MID$ (A$,I,1)
  179. 865  IF X$ = "S"  THEN H$ = H$ +A$(ZZ): GOTO 890
  180. 870  IF X$ = "C"  THEN H$ = H$ +B$(YY): GOTO 890
  181. 875  IF X$ = "D"  THEN  FOR W = 1 TO  VAL( MID$ (A$,I +1,1))  STEP 2:H$ = H$ +",": NEXT : GOTO 890
  182. 880  IF X$ = "T"  THEN H$ = H$ +B$: GOTO 890
  183. 885  IF X$ = "N"  THEN H$ = H$ + MID$ (A$,I +1,1)
  184. 890  NEXT I
  185. 895  REM 
  186. 900  PRINT "AT "T$" DT "H$
  187. 905  PRINT D$"PR#0"
  188. 910  FOR D = 1 TO 300: NEXT D: POKE 35,24: VTAB 22: HTAB 31: INVERSE : PRINT "HUNGUP": POKE 35,21: VTAB 20: FOR D = 1 TO 1300: NEXT D
  189. 915  FOR I = 1 TO  LEN(A$):X$ =  MID$ (A$,I,1)
  190. 920  IF X$ = "S"  THEN O$ = A$(ZZ): VTAB 12: HTAB 20 +I: INVERSE : PRINT "S": NORMAL : VTAB 10: HTAB 21: GOSUB 2045
  191. 925  IF X$ = "C"  THEN O$ = B$(YY): VTAB 12: HTAB 20 +I: INVERSE : PRINT "C": NORMAL : VTAB 11: HTAB 21: GOSUB 2045
  192. 930  IF X$ = "N"  THEN X$ =  MID$ (A$,I +1,1): INVERSE : VTAB 12: HTAB 20 +I: PRINT "N"X$: NORMAL : FOR D = 1 TO 70: NEXT D
  193. 935  IF X$ = "T"  THEN X$ =  MID$ (A$,I +1,1): INVERSE : VTAB 12: HTAB 20 +I: PRINT "T"X$: NORMAL : VTAB 19: HTAB 2:O$ = B$: GOSUB 2045
  194. 940  IF X$ = "D"  THEN X$ =  MID$ (A$,I +1,1): INVERSE : VTAB 12: HTAB 20 +I: PRINT "D"X$: NORMAL :DL =  VAL(X$): GOSUB 2080
  195. 945  VTAB 12: HTAB 21: PRINT A$: NEXT I
  196. 950  POKE 35,24: VTAB 22: HTAB 16: PRINT "WAIT": POKE 35,21
  197. 955  VTAB 20: PRINT D$"PR#2": PRINT D$"IN#2": FOR D = 1 TO 100: NEXT D: POKE  -16368,0
  198. 960  REM <CTRL-O>HACKER RESULTS<CTRL-N>
  199. 965  POKE  -16368,0: VTAB 20: HTAB 15: GET X$: POKE  -16368,0
  200. 970  IF X$ = "S"  THEN CX = 1:M = M +1:K =  PEEK( -16336): IF M >1  THEN M = 0
  201. 975  IF X$ = "G"  THEN K =  PEEK( -16336):GG = GG +1: IF GG >1  THEN GG = 0
  202. 980  IF X$ = "G"  THEN  IF GG = 1  THEN  POKE 49232,0: POKE 49239,0: POKE 49237,0
  203. 985  IF X$ = "G"  THEN  IF GG = 0  THEN  POKE 49236,0: POKE 49233,0
  204. 990  IF X$ = " "  THEN  POKE  -16368,0:K =  PEEK( -16336): PRINT D$"IN#0": PRINT D$"PR#0": GET X$: PRINT : POKE 35,24: VTAB 22: HTAB 31: PRINT "HUNGUP": POKE 35,21: VTAB 19: GOTO 1020
  205. 995  IF X$ = "3"  THEN  PRINT D$"IN#0": PRINT D$"PR#0":U = 0: POKE 35,0: VTAB 22: HTAB 31: PRINT "HUNGUP": POKE 35,21: GOTO 1020
  206. 1000  IF X$ = "2"  THEN 1080
  207. 1005  IF X$ = "1"  THEN 1050
  208. 1010  IF X$ =  CHR$(27)  THEN K =  PEEK( -16336): PRINT D$"IN#0": PRINT D$"PR#0": POKE 35,24: VTAB 22: HTAB 31: PRINT "HUNGUP": POKE 35,21: VTAB 19: GET X$: PRINT : GOTO 1025
  209. 1015  GOTO 960
  210. 1020  POKE 35,24: VTAB 22: HTAB 16: INVERSE : PRINT "WAIT": POKE 35,21: NORMAL : GOTO 750
  211. 1025  FOR D = 1 TO 1000: NEXT D: PRINT : POKE 35,24: VTAB 22: HTAB 16: INVERSE : PRINT "WAIT": POKE 35,21: NORMAL : VTAB 19: PRINT :C$ = B$:T1 = T1 +Y:T2 = T2 +V: GOSUB 1860
  212. 1030 X$ = "WRIT": GOSUB 2225: PRINT D$"OPEN"E$: PRINT D$"APPEND"E$: PRINT D$"WRITE"E$: PRINT "Ending code:"C$: PRINT "Dialed:"Y" Found:"V" Ratio "R$: PRINT D$"CLOSE"
  213. 1035 F = 103:G = 100: GOSUB 2195:F = 63:G = 50: GOSUB 2195: GOSUB 2195:F = 84:G = 90: GOSUB 2195:F = 63:G = 60: GOSUB 2195: FOR D = 1 TO 300: NEXT D
  214. 1040 F = 103:G = 80: GOSUB 2195: FOR D = 1 TO 22: NEXT D:F = 111: GOSUB 2195
  215. 1045  GOSUB 2210: GOTO 240
  216. 1050  REM <CTRL-O>CONNECT<CTRL-N>
  217. 1055  PRINT D$"IN#0"
  218. 1060  PRINT D$"PR#0"
  219. 1065  POKE 35,0: VTAB 22: HTAB 1: PRINT "CONNECT": POKE 35,21
  220. 1070  PRINT D$"PR#2"
  221. 1071  FOR D = 1 TO 1500: NEXT D: PRINT "+++";: FOR D = 1 TO 1500: NEXT D: PRINT  CHR$(13)
  222. 1072  PRINT D$"IN#2"
  223. 1075  PRINT : PRINT D$"PR#0": PRINT D$"IN#0": POKE 16368,0
  224. 1085  IF U < >1  THEN V = V +1
  225. 1090  POKE 35,0: VTAB 22: INVERSE : PRINT "CONNECT": NORMAL : VTAB 22: HTAB 31: PRINT "HUNGUP": VTAB 22: HTAB 25: PRINT "WRIT": FLASH : VTAB 22: HTAB 10: PRINT "CODE": NORMAL : POKE 35,21
  226. 1095 F = 63:G = 40: GOSUB 2195:F = 111: GOSUB 2195:F = 141: GOSUB 2195:F = 159:G = 50: GOSUB 2195: FOR D = 1 TO 100: NEXT D: GOSUB 2195:F = 141:G = 60: GOSUB 2195:F = 159:G = 255: GOSUB 2195
  227. 1100  PRINT D$"OPEN "E$
  228. 1105  PRINT D$"APPEND"E$
  229. 1110  PRINT D$"WRITE"E$
  230. 1115  IF U = 1  THEN  PRINT "Verified": GOTO 1125
  231. 1120  PRINT B$
  232. 1125  PRINT D$"CLOSE"
  233. 1130  POKE 35,0: VTAB 22: HTAB 25: INVERSE : PRINT "DISK": VTAB 22: HTAB 10: PRINT "CODE": NORMAL : POKE 35,21
  234. 1135  IF U = 1  THEN U = 0: GOTO 1145
  235. 1140  IF H = 1  THEN U = 1
  236. 1145  GOTO 1020
  237. 1150  REM  <CTRL-O>CREATE MODULE<CTRL-N>
  238. 1155 P = 1
  239. 1160  POKE 34,0: INVERSE : VTAB 6: HTAB 11: PRINT "CONFIG": POKE 34,6: NORMAL 
  240. 1165 J$ = "":A$ = "SD4T6C":Z = 16:H = 0:L = 0:N = 0:O = 0: FOR D = 1 TO 7:B$(D) = "":A$(D) = "": NEXT 
  241. 1170  HOME 
  242. 1175  VTAB 8: PRINT "#"X" Name :"J$: PRINT : PRINT "Service number :"A$(1): PRINT "Carrier number :"B$(1): VTAB 13: PRINT "FORMAT: "A$: PRINT 
  243. 1180  PRINT "S)ervice   C)arrier    N)umber": PRINT "D)elay     T)ry code   [RET] done"
  244. 1185  VTAB 18: PRINT "Seconds to wait for carrier   ["Z"]": POKE 32,0
  245. 1190  IF P = 1  THEN T = 8
  246. 1195  IF P = 2  THEN T = 10
  247. 1200  IF P = 3  THEN T = 11
  248. 1205  IF P = 4  THEN T = 13
  249. 1210  IF P = 5  THEN T = 18
  250. 1215  VTAB T: HTAB 2: INVERSE : PRINT ">": NORMAL 
  251. 1220 K =  PEEK( -16384): IF K <128  THEN 1220
  252. 1225  POKE  -16368,0:K = K -128: IF K = 27  THEN  VTAB T: HTAB 2: PRINT " ": POKE 32,2: GOTO 250
  253. 1230  IF K = 13  THEN  GOTO 1675
  254. 1235  IF K = 8  OR K = 21  OR K = 10  OR K = 11  THEN  VTAB T: HTAB 2: PRINT " "
  255. 1240  IF K = 8  OR K = 11  THEN P = P -1: IF P <1  THEN P = 1
  256. 1245  IF K = 21  OR K = 10  THEN P = P +1: IF P >5  THEN  POKE 32,2: GOTO 1410
  257. 1250  IF K = 8  OR K = 21  OR K = 10  OR K = 11  THEN 1190
  258. 1255  IF K < >32  THEN 1220
  259. 1260  ON P GOSUB 1270,1280,1285,1290,1395
  260. 1265  GOTO 1190
  261. 1270  VTAB 8: HTAB 12: INPUT "";J$: IF  LEN(J$) >10  THEN 1270
  262. 1275  RETURN 
  263. 1280  VTAB 10: HTAB 19: INPUT "";A$(1): RETURN 
  264. 1285  VTAB 11: HTAB 19: INPUT "";B$(1): RETURN 
  265. 1290  VTAB 13: HTAB 10: GET X$: IF X$ < >"S"  AND X$ < >"C"  AND X$ < >"T"  AND X$ < >"D"  AND X$ < > CHR$(13)  AND X$ < >"N"  AND X$ < > CHR$(127)  THEN 1290
  266. 1295  IF X$ < > CHR$(127)  THEN 1335
  267. 1296  IF  LEN(A$) < = 2  THEN A$ = "":F = 0:G = 0:X3 = 0: GOTO 1330
  268. 1300 X$ =  RIGHT$(" " +A$,1):B$ =  MID$ (" " +A$, LEN(" " +A$) -1,1)
  269. 1305  IF X$ > = "0"  OR X$ < = "9"  THEN A$ =  LEFT$(A$, LEN(A$) -2): IF B$ = "T"  THEN X3 = 0
  270. 1310  IF X$ > = "0"  OR X$ < = "9"  THEN 1330
  271. 1315  IF  LEN(A$) = 1  THEN A$ = "": IF X$ = "S"  THEN F = 0: GOTO 1325
  272. 1320 A$ =  LEFT$(A$, LEN(A$) -1): IF X$ = "S"  THEN F = 0
  273. 1325  IF X$ = "C"  THEN G = 0
  274. 1330  PRINT : VTAB 13: HTAB 3: CALL  -868: VTAB 13: HTAB 3: PRINT "FORMAT: "A$: GOTO 1290
  275. 1335  IF X$ = "S"  AND F = 0  THEN A$ = A$ +"S":F = 1
  276. 1340  IF X$ = "S" GOTO 1385
  277. 1345  IF X$ = "C"  AND G = 0  THEN A$ = A$ +"C":G = 1
  278. 1350  IF X$ = "C" GOTO 1385
  279. 1355  IF X$ = "D"  THEN A$ = A$ +"D"
  280. 1360  IF X$ = "T"  AND X3 = 0  THEN A$ = A$ +"T":X3 = 1
  281. 1365  IF X$ =  CHR$(13)  THEN 1390
  282. 1370  IF X$ = "N"  THEN A$ = A$ +"N"
  283. 1375  GET X$: IF X$ <"0"  OR X$ >"9"  THEN  GOTO 1370
  284. 1380 A$ = A$ +X$
  285. 1385  VTAB 13: HTAB 11: PRINT A$: GOTO 1290
  286. 1390  RETURN 
  287. 1395  VTAB 18: HTAB 34: INPUT "";Z
  288. 1400  VTAB 18: HTAB 33: PRINT "["Z"]"
  289. 1405  RETURN 
  290. 1410  HOME 
  291. 1415  PRINT : PRINT " Auto verify..................[OFF]";: IF H = 1  THEN  PRINT "<CTRL-H><CTRL-H><CTRL-H><CTRL-H>ON ]"
  292. 1420  IF H = 0  THEN  PRINT 
  293. 1425  PRINT " RND dial delay...............[OFF]";: IF L = 1  THEN  PRINT "<CTRL-H><CTRL-H><CTRL-H><CTRL-H>ON ]"
  294. 1430  IF L = 0  THEN  PRINT 
  295. 1435  PRINT : PRINT " Multi-port...................[OFF]";: IF N = 1  THEN  PRINT "<CTRL-H><CTRL-H><CTRL-H><CTRL-H>ON ]"
  296. 1440  IF N = 0  THEN  PRINT 
  297. 1445  PRINT "  2)";A$(2);: HTAB 20: PRINT "5)";A$(5): PRINT "  3)";A$(3);: HTAB 20: PRINT "6)";A$(6): PRINT "  4)";A$(4);: HTAB 20: PRINT "7)"A$(7)
  298. 1450  PRINT 
  299. 1455  PRINT " Multi-carrier................[OFF]";: IF O = 1  THEN  PRINT "<CTRL-H><CTRL-H><CTRL-H><CTRL-H>ON ]"
  300. 1460  IF O = 0  THEN  PRINT 
  301. 1465  PRINT "  2)"B$(2);: HTAB 20: PRINT "5)";B$(5): PRINT "  3)"B$(3);: HTAB 20: PRINT "6)"B$(6): PRINT "  4)"B$(4);: HTAB 20: PRINT "7)"B$(7):P = 1: POKE 32,0
  302. 1470  IF P = 1  THEN T = 8
  303. 1475  IF P = 2  THEN T = 9
  304. 1480  IF P = 3  THEN T = 11
  305. 1485  IF P = 4  THEN T = 16
  306. 1490  VTAB T: HTAB 2: INVERSE : PRINT ">": NORMAL 
  307. 1495 K =  PEEK( -16384): IF K <128  THEN 1495
  308. 1500 K = K -128: POKE  -16368,0
  309. 1505  IF K = 27  THEN  VTAB T: HTAB 2: PRINT " ": POKE 32,2: GOTO 250
  310. 1510  IF K = 13  THEN 1675
  311. 1515  IF K = 8  OR K = 21  OR K = 10  OR K = 11  THEN  VTAB T: HTAB 2: PRINT " "
  312. 1520  IF K = 8  OR K = 11  THEN P = P -1: IF P <1  THEN P = 5: POKE 32,2: GOTO 1170
  313. 1525  IF K = 21  OR K = 10  THEN P = P +1: IF P >4  THEN P = 4
  314. 1530  IF K = 21  OR K = 8  OR K = 10  OR K = 11  THEN 1470
  315. 1535  IF K < >32  THEN 1490
  316. 1540  ON P GOSUB 1550,1575,1600,1635
  317. 1545  GOTO 1470
  318. 1550 H = H +1: IF H >1  THEN H = 0
  319. 1555  VTAB 8: HTAB 34
  320. 1560  IF H = 0  THEN  PRINT "OFF"
  321. 1565  IF H = 1  THEN  PRINT "ON "
  322. 1570  RETURN 
  323. 1575 L = L +1: IF L >1  THEN L = 0
  324. 1580  VTAB 9: HTAB 34
  325. 1585  IF L = 0  THEN  PRINT "OFF"
  326. 1590  IF L = 1  THEN  PRINT "ON "
  327. 1595  RETURN 
  328. 1600 N = N +1: IF N >1  THEN N = 0
  329. 1605  VTAB 11: HTAB 34
  330. 1610  IF N = 0  THEN  PRINT "OFF": GOTO 1630
  331. 1615  IF N = 1  THEN  PRINT "ON "
  332. 1620  FOR D = 1 TO 3: VTAB 11 +D: HTAB 7: INPUT "";A$(D +1): VTAB 11 +D: HTAB 22: PRINT D +4")"A$(D +4): NEXT 
  333. 1625  FOR D = 4 TO 6: VTAB 11 +D -3: HTAB 24: INPUT "";A$(D +1): NEXT 
  334. 1630  RETURN 
  335. 1635 O = O +1: IF O >1  THEN O = 0
  336. 1640  VTAB 16: HTAB 34
  337. 1645  IF O = 0  THEN  PRINT "OFF": GOTO 1665
  338. 1650  IF O = 1  THEN  PRINT "ON "
  339. 1655  FOR D = 1 TO 3: VTAB 16 +D: HTAB 7: INPUT "";B$(D +1): VTAB 16 +D: HTAB 22: PRINT D +4")"B$(D +4): NEXT D
  340. 1660  FOR D = 4 TO 6: VTAB 16 +D -3: HTAB 24: INPUT "";B$(D +1): NEXT 
  341. 1665  RETURN 
  342. 1670  REM  <CTRL-O>EXIT CONFIG/EDIT<CTRL-N>
  343. 1675  VTAB T: HTAB 2: PRINT " ": POKE 32,2
  344. 1680  IF E = 1  THEN 1715
  345. 1685  FOR A = 1 TO  LEN(A$):X$ =  MID$ (A$,A,1)
  346. 1690  IF X$ = "T"  THEN Q =  VAL( MID$ (A$,A +1,1))
  347. 1695  IF X$ = "T"  AND Q = 0  THEN Q = 10
  348. 1700  IF X$ = "T"  THEN 1710
  349. 1705  NEXT A
  350. 1710 C$ = "": FOR D = 1 TO Q -1:C$ = C$ +"0": NEXT D:C$ = C$ +"1":T1 = 0:T2 = 0
  351. 1715 E = 0:P = X: GOSUB 1860
  352. 1720  GOTO 240
  353. 1725  REM  <CTRL-O>DELETE FROM INDEX<CTRL-N>
  354. 1730 X$ = "WRIT": GOSUB 2225
  355. 1735 X$ =  STR$(P)
  356. 1740  PRINT D$"OPEN"G$",L200"
  357. 1745  PRINT D$"READ"G$",R"P: INPUT B$
  358. 1750  PRINT D$"WRITE"G$",R"X$
  359. 1755  PRINT "EMPTY": PRINT "0": PRINT "0": FOR D = 1 TO 188: PRINT " ";: NEXT : PRINT " "
  360. 1760  PRINT D$"CLOSE"
  361. 1765  GOSUB 2210
  362. 1770  GOTO 240
  363. 1775  REM <CTRL-O>READ PARMS FROM INDEX<CTRL-N> 
  364. 1780 X$ = "LOAD": GOSUB 2225
  365. 1785  VTAB 18
  366. 1790  PRINT D$"OPEN"G$",L200"
  367. 1795  PRINT D$"READ"G$",R"P
  368. 1800  INPUT J$
  369. 1805  INPUT T1: INPUT T2
  370. 1810  INPUT A$(1)
  371. 1815  INPUT B$(1)
  372. 1820  INPUT A$
  373. 1825  INPUT Z: INPUT H: INPUT L
  374. 1830  INPUT N: FOR D = 2 TO 7: INPUT A$(D): NEXT 
  375. 1835  INPUT O: FOR D = 2 TO 7: INPUT B$(D): NEXT D
  376. 1840  INPUT C$
  377. 1845  PRINT D$"CLOSE"
  378. 1850  GOSUB 2210
  379. 1855  RETURN 
  380. 1860  REM <CTRL-O>WRITE PARMS TO INDEX<CTRL-N>
  381. 1865 X$ = "SAVE": GOSUB 2225
  382. 1870  PRINT D$"OPEN"G$",L200"
  383. 1875  PRINT D$"WRITE"G$",R"P
  384. 1880  PRINT J$: PRINT T1: PRINT T2: PRINT A$(1): PRINT B$(1)
  385. 1885  PRINT A$
  386. 1890  PRINT Z: PRINT H: PRINT L
  387. 1895  PRINT N: FOR D = 2 TO 7: PRINT A$(D): NEXT 
  388. 1900  PRINT O: FOR D = 2 TO 7: PRINT B$(D): NEXT 
  389. 1905  PRINT C$
  390. 1910  PRINT D$"CLOSE"
  391. 1915  GOSUB 2210
  392. 1920  RETURN 
  393. 1925  REM  <CTRL-O>CONFIGURE INDEX<CTRL-N>
  394. 1930 X$ = "OPEN": GOSUB 2225
  395. 1935  POKE 216,0
  396. 1940  PRINT D$"OPEN"G$",L200"
  397. 1945  FOR D = 1 TO 9
  398. 1950  PRINT D$"WRITE "G$",R"D
  399. 1955  PRINT "EMPTY": PRINT "0": PRINT "0"
  400. 1960  NEXT 
  401. 1965  PRINT D$"CLOSE"
  402. 1970  GOSUB 2210
  403. 1975  GOTO 275
  404. 1980  REM  <CTRL-O>DATE ROUTINE<CTRL-N> 
  405. 1985 K$ = "": VTAB 12: HTAB 15: PRINT "MM/DD/YY"
  406. 1990 P = 14
  407. 1995  FOR X = 1 TO 6
  408. 2000  IF X = 3  OR X = 5  THEN P = P +1:K$ = K$ +"/"
  409. 2005  VTAB 12: HTAB P +X: GET X$: IF X$ <"0"  OR X$ >"9"  THEN 2005
  410. 2010 K$ = K$ +X$: PRINT X$
  411. 2015  NEXT X
  412. 2020  RETURN 
  413. 2025  REM  <CTRL-O>EDIT MODULE<CTRL-N>
  414. 2030  POKE 34,0: INVERSE : VTAB 6: HTAB 11: PRINT "EDIT  ": POKE 34,6: NORMAL 
  415. 2035 E = 1: GOSUB 1775
  416. 2040 P = 1: GOTO 1170
  417. 2045  REM  <CTRL-O>DIALING ROUTINE<CTRL-N>
  418. 2050  FOR W = 1 TO  LEN(O$):X$ =  MID$ (O$,W,1)
  419. 2055  IF X$ <"0"  OR X$ >"9"  THEN 2065
  420. 2060  INVERSE : PRINT X$;: FOR D = 1 TO 70: NEXT D: NORMAL : PRINT ; CHR$(8);X$;: GOTO 2070
  421. 2065  INVERSE : PRINT X$;: NORMAL : PRINT  CHR$(8);X$;
  422. 2070  NEXT W
  423. 2075  PRINT : RETURN 
  424. 2080  REM  <CTRL-O>DELAY SUBROUTINE<CTRL-N>
  425. 2085  POKE 35,24: VTAB 22: HTAB 16: PRINT "WAIT 00"
  426. 2090  FOR D = 1 TO DL +1
  427. 2095  FOR W = 1 TO 270: NEXT W
  428. 2100 X$ =  STR$(D)
  429. 2105  IF  LEN(X$) = 1  THEN X$ = "0" +X$
  430. 2110  VTAB 22: HTAB 16: PRINT "WAIT "X$
  431. 2115  NEXT D
  432. 2120  INVERSE : VTAB 22: HTAB 16: PRINT "WAIT 00": NORMAL : POKE 35,21
  433. 2125  RETURN 
  434. 2130  REM  <CTRL-O>RETURN TO MAIN<CTRL-N>
  435. 2135  ONERR  GOTO 2145
  436. 2140  PRINT D$"RUN HCS BOOT"
  437. 2145  POKE 216,0: END 
  438. 2150  REM  <CTRL-O>CALCULATE RATIO<CTRL-N>
  439. 2155  IF T3 = 0  THEN R$ = "00.0%": GOTO 2180
  440. 2160  IF T3 = T4  THEN R$ = "100% ": GOTO 2180
  441. 2165 R = T4/T3: IF R = 0  THEN R$ = "00.0%": GOTO 2180
  442. 2170 R$ =  STR$(R):R$ = R$ +"00"
  443. 2175 W$ =  MID$ (R$,2,2) +"." + MID$ (R$,4,1) +"%":R$ = W$
  444. 2180  RETURN 
  445. 2185  REM  <CTRL-O>SOUND ROUTINES<CTRL-N>
  446. 2190  DATA 173,48,192,136,208,4,198,1,240,8,202,208,246,166,0,76,3,3,96: FOR D = 1 TO 19: READ X: POKE 770 +D,X: NEXT D: RETURN 
  447. 2195  POKE 0,255 -F
  448. 2200  POKE 1,G
  449. 2205  CALL 771: RETURN 
  450. 2210  REM  <CTRL-O>DISK OPTION<CTRL-N>
  451. 2215  POKE 35,24: VTAB 22: HTAB 25: INVERSE : PRINT "DISK": NORMAL : POKE 35,21
  452. 2220  RETURN 
  453. 2225  POKE 35,24: VTAB 22: HTAB 25: PRINT X$: POKE 35,21: RETURN 
  454. 65535  REM  BY CYBORG 11/08/85